草庐IT

java - Web 服务的 Web 客户端

全部标签

docker - 从 Golang-Web 服务器控制 Docker

我正在寻找一种方法来从golang-webserver控制服务器上的docker-containers。到目前为止,我找到了“github.com/docker/docker/client”和“docker.io/go-docker”。我猜它们都做同样的事情,但它们都没有像样的文档或示例可供使用。有人对这些库有任何经验吗? 最佳答案 https://godoc.org/github.com/docker/docker/client文档对我来说看起来不错。有关更多示例,请查看我的项目https://github.com/loqutus

go - 如何从我的 Controller 文件向本地 Kubernetes 部署的服务提供静态文件?

我已经定义了一个部署文件:---apiVersion:apps/v1kind:Deploymentmetadata:name:{{...}}labels:app.kubernetes.io/name:{{...}}helm.sh/chart:{{...}}app.kubernetes.io/instance:{{.Release.Name}}app.kubernetes.io/managed-by:{{.Release.Service}}spec:...我的服务实现了JWT验证,因此需要一个公钥。我能否以某种方式在部署文件中指定为我的服务提供本地生成的pubkey文件?

ssl - 了解 Mutual TLS,使用服务器名的客户端配置

我想了解双向TLS的工作原理,我有以下示例:Ihaveaclientwhowantstoconnecttoserver"svc1.example.com"但是服务器有一个servercertificatewithacommonNameas"svc1.example.cloud"andaSANas"svc.example.test.cloud".现在当我发出GET请求时,我得到以下信息:x509:证书对svc.example.test.cloud有效,对svc1.example.com无效。所以,我的问题是我是否应该对TLSclientConfig进行更改以包含服务器名?或者我应该在TL

go - 如何强制客户端使用 http/2? (而不是退回到 http 1.1)

我如何强制一个简单的Go客户端使用HTTP/2并防止它退回到HTTP1.1?我有一个简单的HTTP/2服务器在“本地主机”上运行,它在回复中返回请求的详细信息。以下是使用GoogleChrome浏览器对此URL的输出:https://localhost:40443/bananasIlikebananas!Method=GETURL=/bananasProto=HTTP/2.0Host=localhost:40443RequestURI=/bananas但这是我为我的Go客户端代码得到的。你可以看到它回落到HTTP1.1Ilikemonkeys!Method=GETURL=/monkey

javascript - 将用户名存储在从登录到服务器的数组中

我有一个小型的Go网络服务器,可以在用户登录时向他们显示数据。我试图实现的问题是让网页仅在特定用户登录时显示某些信息。例如,当管理员登录时,会有一个他们可以在网络上看到的仅限管理员的项目列表-页面。我遇到的问题是出于某种原因我的Go代码没有将用户名存储在我调用的数组中,所以当我将它传递给JavaScript时它是空白的。以下是我正在努力处理的代码的3个主要部分:main.gopackagemainimport"fmt"funcauthHandler(whttp.ResponseWriter,r*http.Request){r.ParseForm()usernameArray,hasUs

http - 如何通过代理服务器客户端使用自签名证书

我正在尝试创建一个可以通过代理服务器发送自签名HTTP请求的HTTP客户端。我试过这段代码,但我不确定这里是否有问题,下面的代码会起作用吗?funcCreateProxyClient(serverProxystring,sidstring,portProxyint)(*Client,error){http.DefaultTransport.(*http.Transport).TLSClientConfig=&tls.Config{InsecureSkipVerify:true}proxyUrl,_:=url.Parse(serverProxy+":"+strconv.Itoa(port

ssl - 自己的 https certbot web 服务器返回 404 页面未找到

我有非常简单的gohttpswebserver代码如下:packagemainimport(//"fmt"//"io""net/http""log")funcHelloServer(whttp.ResponseWriter,req*http.Request){w.Header().Set("Content-Type","text/plain")w.Write([]byte("Thisisanexampleserver.\n"))//fmt.Fprintf(w,"Thisisanexampleserver.\n")//io.WriteString(w,"Thisisanexamplese

web - 通过 websocket 将 kubernetes 日志暴露给浏览器

我正在尝试在kubernetes中使用sidecar模式来创建日志sidecar以公开特定的容器日志。我正在使用kubernetes客户端从kubernetesapi获取日志并通过websocket发送出去。代码如下:funcserveWs(whttp.ResponseWriter,r*http.Request){w.Header().Set("Access-Control-Allow-Origin","*")conn,err:=upgrader.Upgrade(w,r,nil)iferr!=nil{if_,ok:=err.(websocket.HandshakeError);!ok{

amazon-web-services - 通过试运行 API 调用进行 AWS IAM 策略验证

我正在开发一种工具,它将IAM策略作为JSON并在aws上创建策略。我正在使用aws-sdk-go来构建该工具。我正在寻找一种方法,通过它我可以在aws上执行之前验证策略。AWS是否提供某种API来试运行策略创建或类似的东西?我尝试过的事情:我正在按字段验证政策。Effect字段必须是Allow或Deny对于Action字段,我在我的工具中添加了一个字典,用于将服务映射到有效的操作。这种方法的问题是它需要大量维护。AWS不断发布新的服务和操作,我必须更新字典。对于资源,它应该是有效的ARN。添加了一些其他验证,但手动添加所有验证检查真的很困难。我相信,aws必须为政策提供某种试运行工具

go - jsonrpc 服务器接受请求的小写方法名称(用于大写注册服务)

我正在尝试编写一个jsonrpc服务器,它将接受请求的小写方法名称,例如Arith.multiply,并将它们正确地路由到相应的大写方法,例如Arith.Multiply。这可能吗?附言它是用于测试的生产服务器的轻量级克隆,API是固定的,包括小写的方法名称,所以我无法将请求的方法名称更改为大写。packagemainimport("log""net/http""github.com/gorilla/mux""github.com/gorilla/rpc""github.com/gorilla/rpc/json")typeArgsstruct{A,Bint}typeArithintty